{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Numpy使用Matplotlib实现可视化绘图\n",
    "\n",
    "可以直接将Numpy的数组传给Matplotlib实现可视化绘图：  \n",
    "1. 曲线图\n",
    "2. 饼图\n",
    "3. 柱状图\n",
    "4. 直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1. 绘制正弦曲线"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100,)"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x = np.linspace(-10, 10, 100)\n",
    "x.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100,)"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y = np.sin(x)\n",
    "y.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x, y)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2. 绘制饼图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 数字array\n",
    "arr = np.array([15, 30, 45, 10])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 名字\n",
    "labels = np.array(['Frogs', 'Hogs', 'Dogs', 'Logs'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.pie(arr, labels=labels, autopct='%1.1f%%')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3. 柱状图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 数字array\n",
    "arr = np.array([15, 30, 45, 10])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 数字名字\n",
    "labels = np.array(['Frogs', 'Hogs', 'Dogs', 'Logs'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.bar(labels, arr)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4. 直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 采样得到正态分布的随机数10000个\n",
    "mu, sigma = 2, 1\n",
    "arr = np.random.normal(mu, sigma, 10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([2.92451226, 3.34399062, 0.93272623, ..., 3.38834736, 0.58750266,\n",
       "       2.41586699])"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "arr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD4CAYAAADiry33AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAUr0lEQVR4nO3df6xfd33f8eerpgkT0C5tvHX1D2xWM+FAl6i3TqeorKNJME1nd1MQpmIyWiSLKRZMrFodUYXVCCkEiW1SvYFVrG1tqZeS0V01Zm5oQivUBnxDDKkdPG5MRu6MFBdnsAqa9Cbv/fE9yb755nvvPdf3e/393uPnQ7ryOZ/zOd/7vvb1637u55zz+aaqkCR11w+MuwBJ0uoy6CWp4wx6Seo4g16SOs6gl6SOe8W4Cxh09dVX15YtW8ZdhiStKQ8//PBfVNX6YccmLui3bNnCzMzMuMuQpDUlyf9a6JhTN5LUcQa9JHWcQS9JHWfQS1LHGfSS1HEGvSR1nEEvSR1n0EtSxxn0ktRxE/dkrLTWbTlw34vbT9x1yxgrkXoc0UtSx7UK+iQ7k5xJMpvkwCL9bk1SSab62u5ozjuT5K2jKFqS1N6SUzdJ1gGHgJuAOeBEkumqOj3Q7zXAe4Ev9rVtB/YA1wA/Dnwuyeur6rnRfQmSpMW0GdHvAGar6mxVPQscBXYP6fch4G7gr/radgNHq+qZqvoGMNu8niTpEmlzMXYD8GTf/hxwfX+HJNcBm6rqD5L8ysC5Dw2cu2HwEyTZB+wD2Lx5c7vKpTFYyYVWL9JqXNoEfYa01YsHkx8A/i3w7uWe+2JD1WHgMMDU1NTLjkuTrj/EpUnTJujngE19+xuBc337rwHeCHw+CcCPAdNJdrU4V5p4C4W44a61os0c/QlgW5KtSa6gd3F1+oWDVfWdqrq6qrZU1RZ6UzW7qmqm6bcnyZVJtgLbgC+N/KuQJC1oyRF9Vc0n2Q8cB9YBR6rqVJKDwExVTS9y7qkk9wCngXngdu+4kaRLq9WTsVV1DDg20HbnAn1/bmD/w8CHL7I+SdIK+WSsJHWca91IY+Ztl1ptjuglqeMMeknqOINekjrOoJekjjPoJanjDHpJ6jhvr5SGWO11bFwnR5eSI3pJ6jiDXpI6zqCXpI4z6CWp47wYK00Q173RajDopVXk3TWaBAa9tAY40tdKtJqjT7IzyZkks0kODDn+niSPJjmZ5AtJtjftW5J8v2k/meTjo/4CJEmLW3JEn2QdcAi4id6bfZ9IMl1Vp/u6faqqPt703wV8DNjZHHu8qq4dbdnS6DnNoq5qM6LfAcxW1dmqehY4Cuzu71BV3+3bfRVQoytRkrQSbYJ+A/Bk3/5c0/YSSW5P8jhwN/DevkNbkzyS5I+T/OywT5BkX5KZJDPnz59fRvmSpKW0CfoMaXvZiL2qDlXV3wV+Ffi1pvlbwOaqug54P/CpJD805NzDVTVVVVPr169vX70kaUlt7rqZAzb17W8Ezi3S/yjwHwGq6hngmWb74WbE/3pg5qKqlS6Sd63octZmRH8C2JZka5IrgD3AdH+HJNv6dm8Bvt60r28u5pLkdcA24OwoCpcktbPkiL6q5pPsB44D64AjVXUqyUFgpqqmgf1JbgT+Gnga2Nuc/mbgYJJ54DngPVV1YTW+EEnScK0emKqqY8CxgbY7+7bft8B59wL3rqRASdLK+GSsLmveO6/LgUEvrTFeWNZyGfTShPK3DY2K69FLUscZ9JLUcQa9JHWcQS9JHefFWF12vMipy40jeknqOINekjrOqRt1llM0Uo8jeknqOINekjrOoJekjjPoJanjDHpJ6jiDXpI6rlXQJ9mZ5EyS2SQHhhx/T5JHk5xM8oUk2/uO3dGcdybJW0dZvHS523Lgvhc/pIUsGfTNm3sfAt4GbAfe2R/kjU9V1Zuq6lrgbuBjzbnb6b2Z+DXATuA/vPBm4ZKkS6PNiH4HMFtVZ6vqWeAosLu/Q1V9t2/3VUA127uBo1X1TFV9A5htXk+SdIm0eTJ2A/Bk3/4ccP1gpyS3A+8HrgDe0nfuQwPnbhhy7j5gH8DmzZvb1C1JaqlN0GdIW72soeoQcCjJLwO/BuxdxrmHgcMAU1NTLzsuaXkG5+x9b9nLW5upmzlgU9/+RuDcIv2PAr90kedKkkasTdCfALYl2ZrkCnoXV6f7OyTZ1rd7C/D1Znsa2JPkyiRbgW3Al1ZetiSprSWnbqpqPsl+4DiwDjhSVaeSHARmqmoa2J/kRuCvgafpTdvQ9LsHOA3MA7dX1XOr9LVIkoZotUxxVR0Djg203dm3/b5Fzv0w8OGLLVCStDKuR681zYuO0tJcAkGSOs6gl6SOM+glqeMMeknqOINekjrOoJekjvP2Sq05i6297rrs0ss5opekjjPoJanjnLqRLgP9U1o+PXz5cUQvSR1n0EtSxxn0ktRxBr0kdZwXY6WOaPsMgRdmLz+tRvRJdiY5k2Q2yYEhx9+f5HSSryb5oySv7Tv2XJKTzcf04LmSpNW15Ig+yTrgEHATvTf7PpFkuqpO93V7BJiqqu8l+RfA3cA7mmPfr6prR1y3JKmlNlM3O4DZqjoLkOQosJve+8ACUFUP9vV/CHjXKIuUXNpAunhtpm42AE/27c81bQu5Dfhs3/4rk8wkeSjJLw07Icm+ps/M+fPnW5QkSWqrzYg+Q9pqaMfkXcAU8A/7mjdX1bkkrwMeSPJoVT3+kherOgwcBpiamhr62pKki9NmRD8HbOrb3wicG+yU5EbgA8CuqnrmhfaqOtf8eRb4PHDdCuqVJC1Tm6A/AWxLsjXJFcAe4CV3zyS5DvgEvZB/qq/9qiRXNttXAzfQN7cvSVp9S07dVNV8kv3AcWAdcKSqTiU5CMxU1TTwUeDVwO8lAfhmVe0C3gB8Isnz9H6o3DVwt44kaZW1emCqqo4Bxwba7uzbvnGB8/4UeNNKCpQkrYxPxmpieUulNBqudSNJHWfQS1LHGfSS1HHO0WvsXE1RWl2O6CWp4xzRa6J4p400eo7oJanjDHpJ6jinbiQBXhTvMkf0ktRxBr0kdZxBL0kd5xy9dBlb6HZW5+u7xRG9JHWcQS9JHdcq6JPsTHImyWySA0OOvz/J6SRfTfJHSV7bd2xvkq83H3tHWbwkaWlLBn2SdcAh4G3AduCdSbYPdHsEmKqqnwQ+DdzdnPsjwAeB64EdwAeTXDW68iVJS2kzot8BzFbV2ap6FjgK7O7vUFUPVtX3mt2HgI3N9luB+6vqQlU9DdwP7BxN6ZKkNtoE/Qbgyb79uaZtIbcBn13OuUn2JZlJMnP+/PkWJUmS2moT9BnSVkM7Ju8CpoCPLufcqjpcVVNVNbV+/foWJUmS2moT9HPApr79jcC5wU5JbgQ+AOyqqmeWc64kafW0CfoTwLYkW5NcAewBpvs7JLkO+AS9kH+q79Bx4OYkVzUXYW9u2iRJl8iST8ZW1XyS/fQCeh1wpKpOJTkIzFTVNL2pmlcDv5cE4JtVtauqLiT5EL0fFgAHq+rCqnwlkqShWi2BUFXHgGMDbXf2bd+4yLlHgCMXW6AkaWVc60Zj4VsGSpeOSyBIUscZ9JLUcQa9JHWcc/S6ZJyXl8bDEb0kdZxBL0kd59SNVpXTNdL4OaKXpI4z6CWp4wx6Seo4g16SOs6gl6SO864bSYvqv3PqibtuWbJdk8cRvSR1nEEvSR3XKuiT7ExyJslskgNDjr85yZeTzCe5deDYc0lONh/Tg+dKklbXknP0SdYBh4Cb6L3Z94kk01V1uq/bN4F3A78y5CW+X1XXjqBWSdJFaHMxdgcwW1VnAZIcBXYDLwZ9VT3RHHt+FWqUJK1Am6DfADzZtz8HXL+Mz/HKJDPAPHBXVf3+YIck+4B9AJs3b17GS2sSub6NNFnaBH2GtNUyPsfmqjqX5HXAA0kerarHX/JiVYeBwwBTU1PLeW1NCMP98uC/89rU5mLsHLCpb38jcK7tJ6iqc82fZ4HPA9ctoz5J0gq1CfoTwLYkW5NcAewBWt09k+SqJFc221cDN9A3ty9JWn1LBn1VzQP7gePAY8A9VXUqycEkuwCS/HSSOeDtwCeSnGpOfwMwk+QrwIP05ugNekm6hFotgVBVx4BjA2139m2foDelM3jenwJvWmGNkqQVcK0bSSvmujeTzSUQJKnjDHpJ6jiDXpI6zqCXpI4z6CWp4wx6Seo4g16SOs776CWNlPfUTx5H9JLUcQa9JHWcQS9JHWfQS1LHGfSS1HHedaNl8Y4Kae1xRC9JHdcq6JPsTHImyWySA0OOvznJl5PMJ7l14NjeJF9vPvaOqnBJk2/Lgfte/ND4LBn0SdYBh4C3AduBdybZPtDtm8C7gU8NnPsjwAeB64EdwAeTXLXysiVJbbWZo98BzFbVWYAkR4Hd9L3Jd1U90Rx7fuDctwL3V9WF5vj9wE7gd1dcucbOUZq0NrSZutkAPNm3P9e0tdHq3CT7kswkmTl//nzLl5YktdEm6DOkrVq+fqtzq+pwVU1V1dT69etbvrQkqY02QT8HbOrb3wica/n6KzlXkjQCbYL+BLAtydYkVwB7gOmWr38cuDnJVc1F2JubNknSJbLkxdiqmk+yn15ArwOOVNWpJAeBmaqaTvLTwGeAq4B/nOTXq+qaqrqQ5EP0flgAHHzhwqyky4sP241Pqydjq+oYcGyg7c6+7RP0pmWGnXsEOLKCGiVJK+CTsZLUcQa9JHWcQS9JHWfQS1LHuUyxpLHybpzV54hekjrOEf1lztGU1H2O6CWp4xzR60WO7jVufg+uDoNe0iXnexlcWk7dSFLHOaLXUP4KLXWHI3pJ6jiDXpI6zqCXpI5zjl5L8g4JjYPXiUan1Yg+yc4kZ5LMJjkw5PiVSf5rc/yLSbY07VuSfD/Jyebj46MtX5K0lCVH9EnWAYeAm+i92feJJNNVdbqv223A01X1E0n2AB8B3tEce7yqrh1x3ZKkltqM6HcAs1V1tqqeBY4Cuwf67Ab+c7P9aeDnk2R0ZUqSLlaboN8APNm3P9e0De1TVfPAd4AfbY5tTfJIkj9O8rMrrFeStExtLsYOG5lXyz7fAjZX1beT/BTw+0muqarvvuTkZB+wD2Dz5s0tStJKeHFVury0GdHPAZv69jcC5xbqk+QVwA8DF6rqmar6NkBVPQw8Drx+8BNU1eGqmqqqqfXr1y//q5AkLajNiP4EsC3JVuB/A3uAXx7oMw3sBf4MuBV4oKoqyXp6gf9cktcB24CzI6terTmKly5fSwZ9Vc0n2Q8cB9YBR6rqVJKDwExVTQOfBH4rySxwgd4PA4A3AweTzAPPAe+pqgur8YVIkoZr9cBUVR0Djg203dm3/VfA24ecdy9w7wprlCStgE/GSpp4PiW7Mq51I0kd54he0prlSL8dg74DFvpm904bXU4M/YUZ9GuQAS5pOQz6jvGHgOTofpAXYyWp4wx6Seo4g16SOs45+jXCuXepx/8Ly2fQTzC/oSWNgkEv6bK10GCqa3fqGPQTxlG8pFEz6FdZm/t5DXdp9fj/y7tuJKnzDHpJ6jinbpbJR6ul7uvaRdpWQZ9kJ/Dv6b2V4G9W1V0Dx68E/gvwU8C3gXdU1RPNsTuA2+i9leB7q+r4yKqfIMudB3TeUBJcmsHjkkGfZB1wCLgJmANOJJmuqtN93W4Dnq6qn0iyB/gI8I4k2+m9f+w1wI8Dn0vy+qp6btRfyAtG9Ze2GkFsuEtr23L/Dy+0bPil/s2gzYh+BzBbVWcBkhwFdgP9Qb8b+DfN9qeB30iSpv1oVT0DfKN58/AdwJ+NpnxJmlwL/WC41IO+NkG/AXiyb38OuH6hPlU1n+Q7wI827Q8NnLth8BMk2Qfsa3b/MsmZIXVcDfxFi3r//+t+ZDm9l2+B1192nWOyVuqEtVPrWqkT1k6tl1WdK8ys1y50oE3QZ0hbtezT5lyq6jBweNEikpmqmlqszySwztFbK7WulTph7dRqnaPR5vbKOWBT3/5G4NxCfZK8Avhh4ELLcyVJq6hN0J8AtiXZmuQKehdXpwf6TAN7m+1bgQeqqpr2PUmuTLIV2AZ8aTSlS5LaWHLqpplz3w8cp3d75ZGqOpXkIDBTVdPAJ4Hfai62XqD3w4Cm3z30LtzOA7ev4I6bRad2Joh1jt5aqXWt1Alrp1brHIH0Bt6SpK5yCQRJ6jiDXpI6bs0EfZKPJvlakq8m+UySvznumhaS5O1JTiV5PsnE3XKVZGeSM0lmkxwYdz0LSXIkyVNJ/nzctSwmyaYkDyZ5rPl3f9+4axomySuTfCnJV5o6f33cNS0mybokjyT5g3HXspgkTyR5NMnJJDPjrmeYNRP0wP3AG6vqJ4H/Cdwx5noW8+fAPwX+ZNyFDOpb0uJtwHbgnc1SFZPoPwE7x11EC/PAv6qqNwA/A9w+oX+nzwBvqaq/D1wL7EzyM2OuaTHvAx4bdxEt/aOqunZS76VfM0FfVX9YVfPN7kP07smfSFX1WFUNe7p3Ery4pEVVPQu8sKTFxKmqP6F3F9dEq6pvVdWXm+3/Sy+cXvYE+LhVz182uz/YfEzk3RhJNgK3AL857lq6YM0E/YB/Dnx23EWsUcOWtJi4UFqrkmwBrgO+ON5KhmumQ04CTwH3V9VE1gn8O+BfA8+Pu5AWCvjDJA83y7lMnIlajz7J54AfG3LoA1X135s+H6D3q/LvXMraBrWpdUK1WpZCy5fk1cC9wL+squ+Ou55hmudYrm2ucX0myRuraqKugST5ReCpqno4yc+Nu54Wbqiqc0n+FnB/kq81v41OjIkK+qq6cbHjSfYCvwj8fI35AYClap1gLkuxCpL8IL2Q/52q+m/jrmcpVfV/knye3jWQiQp64AZgV5JfAF4J/FCS366qd425rqGq6lzz51NJPkNvenSign7NTN00b37yq8CuqvreuOtZw9osaaFlaJbk/iTwWFV9bNz1LCTJ+hfuVkvyN4Abga+Nt6qXq6o7qmpjVW2h9/35wKSGfJJXJXnNC9vAzUzeD861E/TAbwCvofer0ckkHx93QQtJ8k+SzAH/ALgvycS8q1ZzQfuFJS0eA+6pqlPjrWq4JL9L770L/l6SuSS3jbumBdwA/DPgLc335slmNDpp/g7wYJKv0vuBf39VTfSti2vA3wa+kOQr9Nbxuq+q/seYa3oZl0CQpI5bSyN6SdJFMOglqeMMeknqOINekjrOoJekjjPoJanjDHpJ6rj/B+p9ZXHuVgCIAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.hist(arr, bins=100, density=1)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
